{"version":3,"file":"static/chunks/pages/region-price/[code]-5fd2663b12344aec.js","mappings":"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","sources":["webpack://_N_E/?3461","webpack://_N_E/./pages/region-price/[code]/index.tsx","webpack://_N_E/"],"sourcesContent":["\n (window.__NEXT_P = window.__NEXT_P || []).push([\n \"/region-price/[code]\",\n function () {\n return require(\"private-next-pages/region-price/[code]/index.tsx\");\n }\n ]);\n if(module.hot) {\n module.hot.dispose(function () {\n window.__NEXT_P.push([\"/region-price/[code]\"])\n });\n }\n ","import { Box, Stack } from \"@mui/material\";\nimport parlors from \"goi_common/src/constants/parlors_detail.json\";\n\nimport {\n ParlorRegionHeadSection,\n BTypeCardView,\n DTypeBreadCrumb,\n BTypeRegionHead,\n CTypeParlorList,\n FUNERAL_SIDO,\n FUNERAL_SIGUNGU,\n ParlorDetailProps,\n numberToLocalString,\n colors,\n} from \"goi_common\";\nimport { parlorRegion } from \"@/constants/parlorRegion\";\nimport { GetStaticPaths, GetStaticProps } from \"next\";\nimport Head from \"next/head\";\n\n// Path 로직 안내\n// FUNERAL_SIDO, SIGUNGU의 key로 path 설정.\n//\n// 1. getStaticPaths 내 key,value 받아서 value(key)로 추가한 뒤 params로 넘기게 변경\n// 2. getStaticProps 내 props sido,sigungu, sidoName, sigunguName에 split,replace 로직 추가\n\nconst { regionColor, targetSidos } = parlorRegion;\n\nexport const getStaticPaths: GetStaticPaths = async () => {\n const sidoList = Array.from(FUNERAL_SIDO).filter(([key, val]) =>\n targetSidos.includes(String(key))\n );\n\n const sidoPath = sidoList.map(([key, val]) => {\n return {\n params: {\n code: `${val}(${key})`,\n },\n };\n });\n\n const sigunguPaths = Array.from(FUNERAL_SIDO)\n .filter(([key, val]) => targetSidos.includes(String(key)))\n .map(([sidoKey, sidoVal]) => {\n const sigungus = FUNERAL_SIGUNGU.get(sidoKey);\n if (sigungus) {\n return Array.from(sigungus).map(([sigunguKey, sigunguVal]) => {\n return {\n params: {\n code: `${sidoVal}(${sidoKey})-${sigunguVal}(${sigunguKey})`,\n },\n };\n });\n }\n })\n .filter((i) => i != null);\n\n return {\n paths: sidoPath.concat(sigunguPaths?.flat() as Array),\n fallback: false,\n };\n};\n\nexport const getStaticProps: GetStaticProps = async ({ params }) => {\n const code = params?.code as string;\n\n if (code.includes(\"-\")) {\n const [sido, sigungu] = code.split(\"-\");\n const sidoName = sido.split(\"(\")[0];\n const sigunguName = sigungu.split(\"(\")[0];\n const sidoNumber = sido.split(\"(\")[1].replace(\")\", \"\");\n const sigunguNumber = sigungu.split(\"(\")[1].replace(\")\", \"\");\n\n const regionParlors = parlors.filter(\n (p) => String(p.sigungu) === String(sigunguNumber)\n );\n\n const 가족장 = Number(\n (\n regionParlors.reduce((prev, curr) => {\n return curr.expected_charge_sum[\"가족장\"] + prev;\n }, 0) / regionParlors.length\n ).toFixed(0)\n ).toLocaleString();\n const 무빈소장 = Number(\n (\n regionParlors.reduce((prev, curr) => {\n return curr.expected_charge_sum[\"무빈소\"] + prev;\n }, 0) / regionParlors.length\n ).toFixed(0)\n ).toLocaleString();\n const 일반장 = Number(\n (\n regionParlors.reduce((prev, curr) => {\n return curr.expected_charge_sum[\"일반장\"] + prev;\n }, 0) / regionParlors.length\n ).toFixed(0)\n ).toLocaleString();\n\n let parlorsString = \"\";\n regionParlors.map((p: any) => {\n parlorsString += `${p.companyname} ${numberToLocalString(\n p.binsos[0].charge\n )}원, `;\n });\n\n const description = `${sidoName} ${sigunguName} 내 ${regionParlors.length}곳의 장례식장을 대상으로 한 비용 비교: 1일 동안 100명의 조문객이 참석할 때의 빈소 비용 및 추가 비용에 대한 정보 부산, 울산, 경남, 경상 및 주변 지역 장례식장 추천도 함께 포함 | ${parlorsString}...`;\n\n return {\n props: {\n regionParlors,\n expectedParlorPrice: { 무빈소장, 가족장, 일반장 },\n sidoName,\n sido: sidoNumber,\n sigunguName,\n sigungu: sigunguNumber,\n isSigungu: true,\n pageDescription: description,\n pageKeywords: `${sidoName} ${sigunguName} 장례식장, ${sidoName} ${sigunguName} 장례식장 추천, ${sidoName} ${sigunguName} 장례식장 비용, ${sidoName} ${sigunguName} 장례식장 평균 예상 비용, ${sidoName} ${sigunguName} 무빈소, ${sidoName} ${sigunguName} 가족장, ${sidoName} ${sigunguName} `,\n pageOgTitle: `${sidoName} ${sigunguName} 지역 장례식장 추천, 비교 :: 부산울산경남장례정보포털`,\n pageOgDescription: description,\n pageOgImage:\n regionParlors.length > 0\n ? regionParlors[0]?.images[0]?.url || \"\"\n : \"\",\n },\n };\n } else {\n const sidoName = code.split(\"(\")[0];\n const sidoNumber = code.split(\"(\")[1].replace(\")\", \"\");\n const regionParlors = parlors.filter((p) => p.sido === String(sidoNumber));\n\n const 가족장 = Number(\n (\n regionParlors.reduce((prev, curr) => {\n return curr.expected_charge_sum[\"가족장\"] + prev;\n }, 0) / regionParlors.length\n ).toFixed(0)\n ).toLocaleString();\n const 무빈소장 = Number(\n (\n regionParlors.reduce((prev, curr) => {\n return curr.expected_charge_sum[\"무빈소\"] + prev;\n }, 0) / regionParlors.length\n ).toFixed(0)\n ).toLocaleString();\n const 일반장 = Number(\n (\n regionParlors.reduce((prev, curr) => {\n return curr.expected_charge_sum[\"일반장\"] + prev;\n }, 0) / regionParlors.length\n ).toFixed(0)\n ).toLocaleString();\n\n let parlorsString = \"\";\n regionParlors.map((p: any) => {\n parlorsString += `${p.companyname} ${numberToLocalString(\n p.binsos[0].charge\n )}원, `;\n });\n\n const description = `${sidoName} 내 ${regionParlors.length}곳의 장례식장을 대상으로 한 비용 비교: 1일 동안 100명의 조문객이 참석할 때의 빈소 비용 및 추가 비용에 대한 정보 부산, 울산, 경남, 경상 및 주변 지역 장례식장 추천도 함께 포함 | ${parlorsString}...`;\n\n return {\n props: {\n regionParlors,\n expectedParlorPrice: { 무빈소장, 가족장, 일반장 },\n sidoName,\n sido: sidoNumber,\n isSigungu: false,\n pageDescription: description,\n pageKeywords: `${sidoName} 장례식장, ${sidoName} 장례식장 추천, ${sidoName} 장례식장 비용, ${sidoName} 장례식장 평균 예상 비용, ${sidoName} 무빈소, ${sidoName} 가족장, ${sidoName} `,\n pageOgTitle: `${sidoName} 지역 장례식장 추천, 비교 :: 부산울산경남장례정보포털`,\n pageOgDescription: description,\n pageOgImage:\n regionParlors.length > 0\n ? regionParlors[0]?.images[0]?.url || \"\"\n : \"\",\n },\n };\n }\n};\n\nexport default function ParlorSlugTypePage({\n regionParlors,\n expectedParlorPrice,\n pageOgTitle,\n sido,\n sidoName,\n sigungu,\n sigunguName,\n isSigungu,\n}: {\n regionParlors: Array;\n expectedParlorPrice: { 무빈소장: number; 가족장: number; 일반장: number };\n pageOgTitle: string;\n sido: string;\n sidoName: string;\n sigungu?: string;\n sigunguName?: string;\n isSigungu: boolean;\n}) {\n const carouselItems = regionParlors.map((res, i) => {\n return {\n \"@type\": \"ListItem\",\n name: `(비용안내) ${res.companyname}`,\n image: `${res.images[0].url}`,\n url: `https://www.gyeongsang-portal.co.kr/funeral-company/${res.companyname} 소개/`,\n position: i + 1,\n };\n });\n\n const carouselRichSearch =\n regionParlors.length > 6\n ? {\n \"@context\": \"http://schema.org\",\n \"@type\": \"ItemList\",\n itemListElement: carouselItems,\n }\n : {};\n\n if (regionParlors.length === 0) {\n return <>;\n }\n\n return (\n <>\n \n {pageOgTitle}\n {regionParlors.length > 5 && (\n \n )}\n \n\n \n }\n ctaList={[]}\n />\n\n (\n \n )}\n />\n \n {isSigungu && (\n (\n \n )}\n />\n )}\n \n );\n}\n"],"names":["window","__NEXT_P","push","__webpack_require__","regionColor","parlorRegion","ParlorSlugTypePage","param","regionParlors","expectedParlorPrice","pageOgTitle","sido","sidoName","sigungu","sigunguName","isSigungu","carouselItems","map","res","i","name","concat","companyname","image","images","url","position","carouselRichSearch","length","itemListElement","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","jsx","Fragment","jsxs","Head","title","script","type","dangerouslySetInnerHTML","__html","JSON","stringify","ParlorRegionHeadSection","BTypeRegionHead","mainColor","event","domain","path","trigger_and_target","ctaList","CTypeParlorList","binsoAveragePrice","CardViewType","BTypeCardView","descriptions","binsos","charge","toLocaleString","href","imgSrc","Box","padding"],"sourceRoot":""}